<ui:composition xmlns="http://www.w3.org/1999/xhtml"
			    xmlns:ui="http://java.sun.com/jsf/facelets"
			    xmlns:h="http://java.sun.com/jsf/html"
			    xmlns:f="http://java.sun.com/jsf/core"
			    xmlns:rich="http://richfaces.org/rich"
			    xmlns:a4j="http://richfaces.org/a4j"
			    xmlns:t="http://myfaces.apache.org/tomahawk"
			    template="/WEB-INF/layout/template.xhtml">
	
	<ui:define name="title">
		<h:outputText value="#{i18n['updateEinenKunden.title']}"/>
	</ui:define>

	<ui:define name="contents">
		<h1>
			<h:outputText value="#{i18n['updateEinenKunden.heading']}"/>
		</h1>
		
		<h:form id="updateForm">
			<a4j:region>
				<h:panelGrid id="kundeDaten" columns="3" columnClasses="kundendetailsBezeichner, kundendetailsDaten">
		   			<h:outputText value="#{i18n['updateEinenKunden.id']}"/>
					<h:outputText id="id" value="#{kv.aenderbarerKunde.id}"/>
					<rich:message for="id" errorClass="error">
						<f:facet name="errorMarker">
							<h:graphicImage url="/images/error.gif"/>
						</f:facet>
					</rich:message>
	
		   			<h:outputText value="#{i18n['updateEinenKunden.art']}"/>
					<h:outputText value="#{kv.aenderbarerKunde.art}"/>
					&#160;
	
		   			<h:outputLabel value="#{i18n['updateEinenKunden.nachname']}"
		   			               for="nachname"/>
					<rich:inplaceInput id="nachname"
					                   layout="block"
					                   value="#{kv.aenderbarerKunde.nachname}"
					                   required="true"
					                   requiredMessage="#{i18n['updateEinenKunden.nachname.required']}"
					                   valueChangeListener="#{kv.geaendert}">
						<t:validateRegExpr pattern="#{initParam.patternNachname}"
						                   message="#{i18n['error.nachnamePattern']}"/>
						<a4j:support event="onchange"
						             ajaxSingle="true"
						             reRender="nachname, fehlermeldungNachname"/>
                        <a4j:support event="onviewactivated"
                                     reRender="kundeDaten, fehlermeldungNachname"
                                     ajaxSingle="true"/>
                    </rich:inplaceInput>
					<rich:message id="fehlermeldungNachname" for="nachname" errorClass="error">
						<f:facet name="errorMarker">
							<h:graphicImage url="/images/error.gif"/>
						</f:facet>
					</rich:message>
	
		   			<h:outputLabel value="#{i18n['updateEinenKunden.vorname']}"
		   			               for="vorname"/>
					<rich:inplaceInput id="vorname"
					                   layout="block"
					                   value="#{kv.aenderbarerKunde.vorname}">
						<t:validateRegExpr pattern="#{initParam.patternVorname}"
					                       message="#{i18n['error.vornamePattern']}"/>
						<a4j:support event="onchange" ajaxSingle="true" reRender="vorname, fehlermeldungVorname"/>
						<a4j:support event="onviewactivated"
                                     reRender="kundeDaten, fehlermeldungVorname"
                                     ajaxSingle="true"/>
					</rich:inplaceInput>
					<rich:message id="fehlermeldungVorname" for="vorname" errorClass="error">
						<f:facet name="errorMarker">
							<h:graphicImage url="/images/error.gif"/>
						</f:facet>
					</rich:message>
	
					<h:outputLabel value="#{i18n['updateEinenKunden.kategorie']}" for="kategorie"/>
					<rich:inputNumberSpinner id="kategorie"
					                         value="#{kv.aenderbarerKunde.kategorie}"
					                         minValue="0" maxValue="#{kv.maxKategorie}"
					                         inputSize="1"
					                         valueChangeListener="#{kv.geaendert}"/>
					&#160;
													
					<h:outputLabel value="#{i18n['updateEinenKunden.umsatz']}" for="umsatz"/>
					<rich:inplaceInput id="umsatz"
					                   layout="block"
					                   value="#{kv.aenderbarerKunde.umsatz}"
					                   required="true"
					                   requiredMessage="#{i18n['updateEinenKunden.umsatz.required']}"
					                   valueChangeListener="#{kv.geaendert}">
						<f:convertNumber pattern="###,###,##0.00"/>
						<a4j:support event="onchange" ajaxSingle="true" reRender="umsatz, fehlermeldungUmsatz"/>
                        <a4j:support event="onviewactivated"
                                     reRender="kundeDaten, fehlermeldungUmsatz"
                                     ajaxSingle="true"/>
                    </rich:inplaceInput>
					<rich:message id="fehlermeldungUmsatz" for="umsatz" errorClass="error">
						<f:facet name="errorMarker">
							<h:graphicImage url="/images/error.gif"/>
						</f:facet>
					</rich:message>
	
		   			<h:outputLabel value="#{i18n['updateEinenKunden.seit']}"
		   			               for="seit"/>
					<rich:calendar id="seit"
					               showInput="true"
					               datePattern="#{i18n['calendar.pattern']}"
					               value="#{kv.aenderbarerKunde.seit}"/>
					&#160;
	
		   			<h:outputLabel value="#{i18n['updateEinenKunden.email']}"
		   			               for="email"/>
					<rich:inplaceInput id="email"
					                   layout="block"
					                   value="#{kv.aenderbarerKunde.email}"
					                   required="true"
					                   requiredMessage="#{i18n['updateEinenKunden.email.required']}"
					                   valueChangeListener="#{kv.geaendert}">
						<t:validateEmail/>
						<a4j:support event="onchange" ajaxSingle="true" reRender="email, fehlermeldungEmail"/>
						<a4j:support event="onviewactivated"
                                     reRender="kundeDaten, fehlermeldungEmail"
                                     ajaxSingle="true"/>
					</rich:inplaceInput>
					<rich:message id="fehlermeldungEmail" for="email" errorClass="error">
						<f:facet name="errorMarker">
							<h:graphicImage url="/images/error.gif"/>
						</f:facet>
					</rich:message>
	
		   			<h:outputLabel value="#{i18n['updateEinenKunden.creditCard']}"
		   			               for="creditCard"/>
					<h:selectOneMenu id="creditCard"
						             value="#{kv.aenderbarerKunde.creditCard}"
					                 valueChangeListener="#{kv.geaendert}">
						<f:selectItem itemValue="NONE" itemLabel=""/>
						<f:selectItem itemValue="AmericanExpress" itemLabel="AmericanExpress"/>
						<f:selectItem itemValue="Mastercard" itemLabel="Mastercard"/>
						<f:selectItem itemValue="VISA" itemLabel="VISA"/>
					</h:selectOneMenu> 
					&#160;
	
		   			<h:outputLabel value="#{i18n['updateEinenKunden.creditCardId']}"
		   			               for="creditCardId"/>
					<rich:inplaceInput id="creditCardId"
					                   layout="block"
					                   value="#{kv.aenderbarerKunde.creditCardId}"
					                   valueChangeListener="#{kv.geaendert}">
						<t:validateCreditCard/>
						<a4j:support event="onchange" ajaxSingle="true" reRender="creditCardId, fehlermeldungCreditCardId"/>
						<a4j:support event="onviewactivated"
                                     reRender="kundeDaten, fehlermeldungCreditCardId"
                                     ajaxSingle="true"/>
					</rich:inplaceInput>
					<rich:message id="fehlermeldungCreditCardId" for="creditCardId" errorClass="error">
						<f:facet name="errorMarker">
							<h:graphicImage url="/images/error.gif"/>
						</f:facet>
					</rich:message>
	
		   			<h:outputLabel value="#{i18n['updateEinenKunden.rabatt']}"
		   			               for="rabatt"
		   			               rendered="#{kv.aenderbarerKunde.art eq 'F'}"/>
					<rich:inplaceInput id="rabatt"
					                   layout="block"
					                   value="#{kv.aenderbarerKunde.rabatt}"
					                   maxInputWidth="6"
					                   inputWidth="4"
					                   valueChangeListener="#{kv.geaendert}"
					                   rendered="#{kv.aenderbarerKunde.art eq 'F'}">
						<f:converter converterId="javax.faces.Float"/>
						<f:validateDoubleRange minimum="0" maximum="#{kv.maxRabatt}"/>
						<a4j:support event="onchange" ajaxSingle="true" reRender="rabatt, fehlermeldungRabatt"/>
						<a4j:support event="onviewactivated"
                                     reRender="kundeDaten, fehlermeldungRabatt"
                                     ajaxSingle="true"/>
					</rich:inplaceInput>
					<rich:message id="fehlermeldungRabatt" for="rabatt" rendered="#{kv.aenderbarerKunde.art eq 'F'}" errorClass="error">
						<f:facet name="errorMarker">
							<h:graphicImage url="/images/error.gif"/>
						</f:facet>
					</rich:message>
					
					<h:outputLabel value="#{i18n['updateEinenKunden.password']}"
					               for="password"/>
					<h:inputSecret id="password"
					               value="#{kv.aenderbarerKunde.password}"
					               valueChangeListener="#{kv.geaendert}"/>
					&#160;				
	
					<h:outputLabel value="#{i18n['updateEinenKunden.passwordWdh']}"
					               for="passwordWdh"/>
					<h:inputSecret id="passwordWdh"
					               value="#{kv.aenderbarerKunde.password}"
					               valueChangeListener="#{kv.geaendert}">
						<t:validateEqual for="updateForm:password"
						                 message="#{i18n['error.password.notEqual']}"/>
					</h:inputSecret>
					<rich:message id="fehlermeldungPassword" for="passwordWdh" errorClass="error">
						<f:facet name="errorMarker">
							<h:graphicImage url="/images/error.gif"/>
						</f:facet>
					</rich:message>
					
				</h:panelGrid>
				
				<p>
					<h:commandButton id="updateSubmit" action="#{kv.update}" value="#{i18n['updateEinenKunden.submit']}"/>
				</p>
			</a4j:region>
		</h:form>
		<rich:jQuery selector="#nachname" query="focus()"/>
		
		<h:outputText value="#{i18n['common.required']}"/>
	</ui:define>
</ui:composition>
